export interface OrderVO {
  /**
   * 库单ID
   */
  id: string | number;

  /**
   * 单据名称
   */
  name: string;

  /**
   * 单据类型
   */
  typeId: string | number;

  /**
   * 客户
   */
  partnerId: string | number;

  /**
   * 己方仓库id
   */
  selfWhId: string | number;

  /**
   * 对方仓库id
   */
  otherWhId: string | number;

  /**
   * 单据状态
   */
  status: string;

  /**
   * 单据来源id
   */
  sourceId: string | number;

  /**
   * 生产厂商
   */
  manufacturerId: string | number;

  /**
   * 申请人
   */
  applicantId: string | number;

  /**
   * 发货员
   */
  execId: string | number;

  /**
   * 备注
   */
  remark: string;

  /**
   * line列表
   */
  line?: OrderLineVO[];

}

export interface OrderForm extends BaseEntity {
  /**
   * 库单ID
   */
  id?: string | number;

  /**
   * 单据名称
   */
  name?: string;

  /**
   * 单据类型
   */
  typeId?: string | number;

  /**
   * 客户
   */
  partnerId?: string | number;

  /**
   * 己方仓库id
   */
  selfWhId?: string | number;

  /**
   * 对方仓库id
   */
  otherWhId?: string | number;

  /**
   * 单据状态
   */
  status?: string;

  /**
   * 单据来源id
   */
  sourceId?: string | number;

  /**
   * 生产厂商
   */
  manufacturerId?: string | number;

  /**
   * 申请人
   */
  applicantId?: string | number;

  /**
   * 发货员
   */
  execId?: string | number;

  /**
   * 备注
   */
  remark?: string;

  /**
   * line列表
   */
  line?: OrderLineVO[];

}

export interface OrderQuery extends PageQuery {

  /**
   * 库单ID
   */
  id?: string | number;

  /**
   * 单据名称
   */
  name?: string;

  /**
   * 单据类型
   */
  typeId?: string | number;

  /**
   * 客户
   */
  partnerId?: string | number;

  /**
   * 己方仓库id
   */
  selfWhId?: string | number;

  /**
   * 单据状态
   */
  status?: string;

  /**
   * 更新时间
   */
  updateTime?: string;

  /**
   * 日期范围参数
   */
  params?: any;
}


export interface OrderLineVO {
  /**
   * 父主键
   */
  id?: string | number;

  /**
   * 子主键
   */
  lineId?: string | number;
  name?: string;

  /**
   * 产品ID
   */
  productId?: string | number;
  batchCode?: string;
  measureUnit?: string;
  price?: number;
  quantity?: number;
  whId?: number;
  areaId?: number;
  totalMoney?: number;
  discountMoney?: number;
  costMoney?: number;
  expireDate?: any;
}

export interface OrderLineQuery extends PageQuery {

  /**
   * 父主键
   */
  id?: string | number;
  name?: string;
  /**
   * 子主键
   */
  lineId?: string | number;
  productId?: number;
  batchCode?: string;
  measureUnit?: string;
  price?: number;
  quantity?: number;
  whId?: number;
  areaId?: number;
  totalMoney?: number;
  discountMoney?: number;
  costMoney?: number;
  expireDate?: any;

}


